home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / backup / dds2tar-.000 / dds2tar-2.4.12.tar / dds2tar-2.4.12 / dds2tar.h < prev    next >
C/C++ Source or Header  |  1996-03-29  |  2KB  |  93 lines

  1. /*
  2.  * This file is part of dds2tar.
  3.  * Copyright by J"org Weule
  4.  */
  5.  
  6. /*
  7.  * Please change the value ST_BUFFER_BLOCKS at the top of the Makefile
  8.  * on error with these lines.
  9.  */
  10. #if defined ST_BUFFER_BLOCKS && ST_BUFFER_BLOCKS == 0
  11. #undef ST_BUFFER_BLOCKS
  12. #include "/usr/src/linux/drivers/scsi/st_options.h"
  13. #endif
  14.  
  15. #ifndef ST_BUFFER_BLOCKS
  16. #define ST_BUFFER_BLOCKS 32
  17. #endif
  18.  
  19. extern const char dds_headline[];
  20. extern const char dds_index_format[];
  21. extern const char dds_index_scan_format[];
  22. extern const char dds_old_headline[];
  23. extern const char dds_old_index_format[];
  24. extern const char dds_old_index_scan_format[];
  25. extern const char dds_loctext[];
  26. extern const char dds_locline1[];
  27. extern const char dds_locline2[];
  28.  
  29. /*
  30.  * It's faster to read some records than to skip over them,
  31.  * if the number is smaller then DONT_SKIP.
  32.  * I really don't know the right number here.
  33.  */
  34. #define DONT_SKIP ((cur_n>0)?((int)(1024/cur_n)):((int)(1024/buf_n)))
  35.  
  36. typedef union {
  37.     char    chrptr[512];
  38.     struct {
  39.         char    name[100];
  40.         char    dummy1[24];
  41.         char    size[12];
  42.         char    mtime[12];
  43.         char    dummy2[8];
  44.         char    linkflag;
  45.         char    dummy3[100];
  46.         char    magic[8];
  47.     }
  48.     hdr;
  49. }
  50.  
  51. tar_record;
  52.  
  53. extern int tar_fb;
  54. extern int tar_bs;
  55. extern int tar_n;
  56.  
  57. extern tar_record *cur_block;
  58. extern int cur_blkno;
  59. extern int next_blkno;
  60. extern int cur_n;
  61. extern int cur_bs;
  62. extern int buf_n;
  63. extern int force_nochk;
  64.  
  65. extern char *cur_line;
  66.  
  67. extern int hash_mode;
  68. extern int quick_mode;
  69. extern int device;
  70. extern int verbose;
  71. extern int list_only;
  72. extern FILE *index_fp;
  73. extern int write_body;
  74.  
  75.  
  76. extern int dds_index(void);
  77. extern int dds_cmp(char const *const *pattern);
  78. extern int rt_line(
  79.               int *const ptr_blkno,
  80.               int *const ptr_recno,
  81.               int *const ptr_size,
  82.               char **const ptr_name
  83. );
  84. extern int rt_loc_line(void);
  85. extern int extract_loc(char const *const *);
  86.  
  87. #ifdef  EXP_STUFF
  88. extern int tar_dds(int const, char const *const *const);
  89.  
  90. #endif
  91.  
  92. extern int dds_is_tar_header_record(tar_record*const);
  93.